package com.dragon.modules.yuegou.entity.member;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.member.ShoppingCartShoppingType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 购物车实体类<br>
 * 对应的表为：mem_shopping_cart<br>
 * 
 * @author pbuilder generated
 * @date 2021-12-29 11:24:34
 * @company sgy
 * @version 2.0
 */
@TableName("mem_shopping_cart")
@ApiModel(description = "购物车")
public class ShoppingCartEntity {

    /**  */
	protected String id;

    /** 会员id */
	@ApiModelProperty("会员id")
	protected String memberId;

    /** 商圈ID */
	@ApiModelProperty("商圈ID")
	protected String busdId;

    /** 商户ID */
	@ApiModelProperty("商户ID")
	protected String merchantId;

    /** [枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME */
	@ApiModelProperty("[枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME")
	protected ShoppingCartShoppingType shoppingType;

    /** 商品id */
	@ApiModelProperty("商品id")
	protected String skuId;

    /** 商品数量 */
	@ApiModelProperty("商品数量")
	protected Integer skuQuantity;

    /** 规格属性 JSON存储 */
	@ApiModelProperty("规格属性 JSON存储")
	protected String skuAttr;

    /** 是否已下单：0 未下单 1 已下单 */
	@ApiModelProperty("是否已下单：0 未下单 1 已下单")
	protected Boolean status;

    /** 是否使用会员价 */
	@ApiModelProperty("是否使用会员价")
	protected Boolean useMemberPrice;

    /**  */
	protected LocalDateTime createdTime;

    /**  */
	protected LocalDateTime modifiedTime;

    /** 逻辑删除，1表示已删除,0表示未删除 */
	@ApiModelProperty("逻辑删除，1表示已删除,0表示未删除")
	protected Boolean del;

    /**  */
	protected LocalDateTime delTime;

	/**
	 * 构造一个空购物车实体对象
	 */
	public ShoppingCartEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个购物车实体对象
	 * 
	 * @param other 其它对象
	 */
	public ShoppingCartEntity(ShoppingCartEntity other){
		super();
     	this.id = other.id;
     	this.memberId = other.memberId;
     	this.busdId = other.busdId;
     	this.merchantId = other.merchantId;
     	this.shoppingType = other.shoppingType;
     	this.skuId = other.skuId;
     	this.skuQuantity = other.skuQuantity;
     	this.skuAttr = other.skuAttr;
     	this.status = other.status;
     	this.useMemberPrice = other.useMemberPrice;
     	this.createdTime = other.createdTime;
     	this.modifiedTime = other.modifiedTime;
     	this.del = other.del;
     	this.delTime = other.delTime;
	}


	/**
	 * 获取
	 * 
	 * @return id 
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置
	 * 
	 * @param id 
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取会员id
	 * 
	 * @return memberId 会员id
	 */
	public String getMemberId() {
		return memberId;
	}
  	
	/**
	 * 设置会员id
	 * 
	 * @param memberId 会员id
	 */
	public void setMemberId(String memberId) {
		this.memberId = memberId;
	}

	/**
	 * 获取商圈ID
	 * 
	 * @return busdId 商圈ID
	 */
	public String getBusdId() {
		return busdId;
	}
  	
	/**
	 * 设置商圈ID
	 * 
	 * @param busdId 商圈ID
	 */
	public void setBusdId(String busdId) {
		this.busdId = busdId;
	}

	/**
	 * 获取商户ID
	 * 
	 * @return merchantId 商户ID
	 */
	public String getMerchantId() {
		return merchantId;
	}
  	
	/**
	 * 设置商户ID
	 * 
	 * @param merchantId 商户ID
	 */
	public void setMerchantId(String merchantId) {
		this.merchantId = merchantId;
	}

	/**
	 * 获取[枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME
	 * 
	 * @return shoppingType [枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME
	 */
	public ShoppingCartShoppingType getShoppingType() {
		return shoppingType;
	}
  	
	/**
	 * 设置[枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME
	 * 
	 * @param shoppingType [枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME
	 */
	public void setShoppingType(ShoppingCartShoppingType shoppingType) {
		this.shoppingType = shoppingType;
	}

	/**
	 * 获取商品id
	 * 
	 * @return skuId 商品id
	 */
	public String getSkuId() {
		return skuId;
	}
  	
	/**
	 * 设置商品id
	 * 
	 * @param skuId 商品id
	 */
	public void setSkuId(String skuId) {
		this.skuId = skuId;
	}

	/**
	 * 获取商品数量
	 * 
	 * @return skuQuantity 商品数量
	 */
	public Integer getSkuQuantity() {
		return skuQuantity;
	}
  	
	/**
	 * 设置商品数量
	 * 
	 * @param skuQuantity 商品数量
	 */
	public void setSkuQuantity(Integer skuQuantity) {
		this.skuQuantity = skuQuantity;
	}

	/**
	 * 获取规格属性 JSON存储
	 * 
	 * @return skuAttr 规格属性 JSON存储
	 */
	public String getSkuAttr() {
		return skuAttr;
	}
  	
	/**
	 * 设置规格属性 JSON存储
	 * 
	 * @param skuAttr 规格属性 JSON存储
	 */
	public void setSkuAttr(String skuAttr) {
		this.skuAttr = skuAttr;
	}

	/**
	 * 获取是否已下单：0 未下单 1 已下单
	 * 
	 * @return status 是否已下单：0 未下单 1 已下单
	 */
	public Boolean getStatus() {
		return status;
	}
  	
	/**
	 * 设置是否已下单：0 未下单 1 已下单
	 * 
	 * @param status 是否已下单：0 未下单 1 已下单
	 */
	public void setStatus(Boolean status) {
		this.status = status;
	}

	/**
	 * 获取是否使用会员价
	 * 
	 * @return useMemberPrice 是否使用会员价
	 */
	public Boolean getUseMemberPrice() {
		return useMemberPrice;
	}
  	
	/**
	 * 设置是否使用会员价
	 * 
	 * @param useMemberPrice 是否使用会员价
	 */
	public void setUseMemberPrice(Boolean useMemberPrice) {
		this.useMemberPrice = useMemberPrice;
	}

	/**
	 * 获取
	 * 
	 * @return createdTime 
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置
	 * 
	 * @param createdTime 
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取
	 * 
	 * @return modifiedTime 
	 */
	public LocalDateTime getModifiedTime() {
		return modifiedTime;
	}
  	
	/**
	 * 设置
	 * 
	 * @param modifiedTime 
	 */
	public void setModifiedTime(LocalDateTime modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

	/**
	 * 获取逻辑删除，1表示已删除,0表示未删除
	 * 
	 * @return del 逻辑删除，1表示已删除,0表示未删除
	 */
	public Boolean getDel() {
		return del;
	}
  	
	/**
	 * 设置逻辑删除，1表示已删除,0表示未删除
	 * 
	 * @param del 逻辑删除，1表示已删除,0表示未删除
	 */
	public void setDel(Boolean del) {
		this.del = del;
	}

	/**
	 * 获取
	 * 
	 * @return delTime 
	 */
	public LocalDateTime getDelTime() {
		return delTime;
	}
  	
	/**
	 * 设置
	 * 
	 * @param delTime 
	 */
	public void setDelTime(LocalDateTime delTime) {
		this.delTime = delTime;
	}

    public String toString() {
		return new StringBuilder().append("ShoppingCartEntity{").
			append("id=").append(id).
			append(",memberId=").append(memberId).
			append(",busdId=").append(busdId).
			append(",merchantId=").append(merchantId).
			append(",shoppingType=").append(shoppingType).
			append(",skuId=").append(skuId).
			append(",skuQuantity=").append(skuQuantity).
			append(",skuAttr=").append(skuAttr).
			append(",status=").append(status).
			append(",useMemberPrice=").append(useMemberPrice).
			append(",createdTime=").append(createdTime).
			append(",modifiedTime=").append(modifiedTime).
			append(",del=").append(del).
			append(",delTime=").append(delTime).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public ShoppingCartEntity copy() {
		return new ShoppingCartEntity(this);
	}

    /**  */
	public static final String COL_ID = "id";

    /** 会员id */
	public static final String COL_MEMBER_ID = "member_id";

    /** 商圈ID */
	public static final String COL_BUSD_ID = "busd_id";

    /** 商户ID */
	public static final String COL_MERCHANT_ID = "merchant_id";

    /** [枚举]购物车类型：0-优质好货-GOODS、1-到家商品-HOME */
	public static final String COL_SHOPPING_TYPE = "shopping_type";

    /** 商品id */
	public static final String COL_SKU_ID = "sku_id";

    /** 商品数量 */
	public static final String COL_SKU_QUANTITY = "sku_quantity";

    /** 规格属性 JSON存储 */
	public static final String COL_SKU_ATTR = "sku_attr";

    /** 是否已下单：0 未下单 1 已下单 */
	public static final String COL_STATUS = "status";

    /** 是否使用会员价 */
	public static final String COL_USE_MEMBER_PRICE = "use_member_price";

    /**  */
	public static final String COL_CREATED_TIME = "created_time";

    /**  */
	public static final String COL_MODIFIED_TIME = "modified_time";

    /** 逻辑删除，1表示已删除,0表示未删除 */
	public static final String COL_DEL = "del";

    /**  */
	public static final String COL_DEL_TIME = "del_time";
}
